Method and apparatus to identify a work received by a processing system

ABSTRACT

A method and system for identifying a work in a data transfer. In accordance with this invention, a data transfer is received. The media content of a work is then read from the data transfer. The media content is then used to generate a fingerprint of the work. The fingerprint is then used to identify the work. A report including the identity of the work is then generated.

BACKGROUND

[0001] 1. Field of the Disclosure

[0002] The present disclosure relates to a system for determining anidentification of a work from media content in data received by aprocessing system. More particularly, this invention relates to a systemthat generates a report of the identities of works received by aprocessing system.

[0003] 2. The Prior Art

BACKGROUND

[0004] Data may be transferred between computer or other processingsystems in a variety of ways. The data may be transferred by a firstprocessing system writing the data to a media, such as a magnetic diskor compact disc, that may be read by a second processing system. TheInternet may also be used to transfer data between computer systems. Thedata may be transferred via the Internet in a file or as a stream ofdata. The transferred data may include a work.

[0005] For purposes of the present discussion, a work is anything thatis fixed in a tangible medium. Some examples of works include, but arenot limited to, audio renderings, video renderings, images, video/audiorenderings, and software. An example of an audio rendering is a song orother audio track. Examples of video renderings include animation orvideo sequence. Examples of an image include photographs and paintings.Examples of audio/video renderings include movies, television shows, andcartoons. Examples of software include word processing programs andvideo games.

[0006] Most works have a property right, such as a copyright associatedwith a work. Thus the owner of the property right is entitled to aroyalty or other form of compensation for use of the work. For example,an owner of a song copyright, such as a songwriter, is entitled to aroyalty for each copy of the recording produced.

[0007] Therefore, there is a need for a method to identify works thatare present on computers systems and to generate reports of the works.The reports may be used to verify royalty payments or generateArbitron®-like ratings by identifying how often works are beingstreamed, downloaded, or reproduced in another manner. The reports maybe used by an organization to ensure that the organization obtain aproper license for a work prior to reproducing, perceiving, or otherwisecommunicating the work. Alternatively, the reports may be used to verifya bill of materials prior to the replication of a work. Furthermore, thereport may be used to alert an agent of an owner of a work that a copyof the work is present on a processing system.

[0008] In order to identify works, most files or streams of dataincluding the work include an identifier, such as a watermark, ameta-tag, a header, or other data structure that identifies the work inthe data. Often a physical media, such as a Compact Disc (CD) or DigitalVideo Disc (DVD), that embodies the recording includes identifying marksor metadata stored on the media as well as the recording of the work. Inorder to avoid detection of a transfer of a work, many users may removeor change these identifiers in the file, a data stream or stored on amedia such as a CD or DVD. Therefore, a processing system cannot rely onthe presence or accuracy of these identifiers. Thus, a work may bereproduced by a processing system without the permission or knowledge ofthe owner of a property right in the work. For example, a user mayremove a meta-tag from a file containing a song and transfer a file to asecond processing system. Since the meta-tag no longer identifies thesong in the file, the processing system may reproduce the song withoutproper identification of the work and/or the permission of an owner andmay avoid paying royalty fees to the owner. Therefore, there is a needin the art for a method for identifying a work in a transferred file ordata stream from the media content of the file. For purposes of thepresent discussion media content is the data in a transferred file orstream that is a representation of the work.

SUMMARY

[0009] The above and other problems are solved and an advance in the artis made by a method and an apparatus for identifying a work intransferred data in accordance with this invention. This invention is asystem that is provided by executing instructions by processing systemsin accordance with this invention. The instructions may be executedentirely by one processing system or may be executed by multipleprocessing systems connected in a server client relationship inaccordance with this invention.

[0010] In accordance with the present invention, the identification of awork is determined and a report of a presence of the work is provided inthe following manner. A processing system executes instructions thatreceive a fingerprint of a work. The fingerprint is generated from themedia content of the work in the transferred data. The fingerprint maybe an analytical representation of the works that is a measurement ofthe work, a collection of characteristics of the work, a synthesis ofthe work, and/or measurements of the work that forms a representation ofthe work. The processing system then determines an identity of the workfrom the fingerprint of the work. The processing system then generates areport that includes the identity of the work.

[0011] The fingerprint of the work may be received in a data transferfrom a second processing system. In order to save time and transmissionover head, the second processing unit may send fingerprints of more thanone work at the same time. This occurs when the first and secondprocessing systems are in a client server relationship. Alternatively,the fingerprint may be generated by the processing system thatdetermines the identity. If the fingerprint of the work was receivedfrom a second processing system the report may be transmitted to thesecond processing unit. The second processing unit then stores thereport for future use.

[0012] The first processing system may also store the report for futureuse. The first processing system may also transmit the report of theidentification to a processing system of a owner of a property right inthe work to notify the owner of a transfer of the work.

[0013] In one embodiment of this invention, the determination of theidentity of a work from the fingerprint of the work is performed in thefollowing manner. The processing system compares the fingerprint to eachfingerprint of known works stored in a database of known works. When amatch occurs between the fingerprint of the work and a fingerprint of aknown work in the database, the identification of the work in thedatabase is returned as the identity of the work.

[0014] If the fingerprint of the work does not match a fingerprint inthe database of known works, the following process may be performed. Theprocessing unit may compare the fingerprint to fingerprints stored in adatabase of unknown works. The processing unit then determines if thefingerprint matches any unknown works that have previously been receivedby the system. If the fingerprint of the work matches one of thefingerprints of unknown works, the processing unit may return a time offirst detection of the work in the report and an indication that thework is unknown. If the fingerprint of the work does not match afingerprint in the database of unknown work, the fingerprint may bestored in the database of unknown works along with a time of firstdetection and other information about the detection.

[0015] When the processing unit doing the identification is a server, asecond processing unit or client may perform the following process toprovide the fingerprint of the work to the server. The second processingsystem receives a data transfer including the work. The secondprocessing unit then reads the media content of the work from the databeing transferred. The fingerprint is then generated from the mediacontent. The fingerprint is then transmitted to the server.

[0016] After the server generates the report including theidentification of the work, the client receives the report from theserver. The server then may store the report in a memory. The reportthen may be transmitted from the client or server to a processing systemof the owner of a property right or other interested party, such as anagent, in the work. The report may also be provided in a printableformat by the client or the server.

[0017] In order to generate the fingerprint from the media content ofthe work, the client may have to convert the format of the media contentin the data transfer into a standard format. The conversion may includeconverting to the standard format from another format such as MP3, WMA,AVI, or Cabinet. The conversion may include separating audio and videodata of a work.

BRIEF DESCRIPTION OF THE DRAWING FIGURES

[0018] The above described and other features of this invention aredescribed in the following Detailed Description and shown in thefollowing drawings:

[0019]FIG. 1 illustrating a connection of processing systems in anetwork that perform processes for providing this invention;

[0020]FIG. 2 illustrating a block diagram of an example of a processingsystem that may perform any of the processes in accordance with thisinvention;

[0021]FIG. 3 illustrating a flow diagram of an exemplary processexecuted by a processing unit for receiving a data transfer andgenerating a fingerprint and receiving a report; and

[0022]FIG. 4 illustrating a flow diagram of an exemplary processexecuted by processing unit to generate a report on the identity of awork;

[0023]FIG. 5 illustrating a flow diagram of a exemplary process executedby a processing unit to determine an identity of a work from thefingerprint; and

[0024]FIG. 6 illustrating a flow diagram of an exemplary a processexecuted by a cline to provide a file transfer from a master copy.

DETAILED DESCRIPTION

[0025] Persons of ordinary skill in the art will realize that thefollowing description is illustrative only and not in any way limiting.Other modifications and improvements will readily suggest themselves tosuch skilled persons having the benefit of this disclosure.

[0026] This disclosure relates to identifying a work in a data transferfrom the media content of the work in the transferred data. Variousdisclosed aspects may be embodied in applications executed by computersor other processing systems. The applications are instructions stored ona media that is readable by a processing unit. The media may be any typeof device that may store machine readable instructions and data.

[0027]FIG. 1 illustrates a system 100 having processing systemsconnected to network 105. For purposes of this discussion, a processingsystem is any system having a processor, microprocessor or anycombination of processors and/or microprocessors to execute instructionsstored in a memory to perform applications for handling data. In system100, computers 150 and 152 are connected to network 105 via paths 151and 153 to communicate with other processing systems in the network.Server 102 is connected to network 105 and provides various applicationsto other processing systems. Router 103 is connected to network 105 viapath 163 and manages communication over network 105. Gateway server 104is connected to network 105 via path 164 and connects to the servers viapath 140 to provide Internet service, and other connections for use ofnetwork 105.

[0028]FIG. 2 illustrates a block diagram of an exemplary processingsystem 200 connected to network 105. Each of the processing systems suchas personal computers 150, 152, server 102, router 103, and gatewaycomputer 104 include the basic components of processing system 200. Oneskilled in the art will recognize that the various processing systemsmay include other components or other configurations depending on theparticular function of the processing system in network 100. However,each of the processing systems may be able to execute the instructionsfor providing the following processes in accordance with this invention.

[0029] Processing system 200 includes a Central Processing Unit (CPU)200. CPU 200 is a processor, microprocessor, or a group of a combinationof processors and/or microprocessors. Each processor and/ormicroprocessor includes registers and other circuitry for executinginstructions stored in a memory to provide applications for processingdata. The CPU may also include firmware which is circuitry that storesinstructions for various applications.

[0030] Memory bus 205 connects CPU 201 to memories for storingexecutable instructions and data for applications being executed by CPU201. A non-volatile memory such as Read Only Memory (ROM) 210 may beconnected to memory bus 205. ROM 210 stores instructions for drivers andconfiguration data for processing system 200. A volatile memory, suchRandom Access Memory (RAM) 215 is also connected to memory bus 205. RAM215 stores data and instructions for applications being executed by CPU201. One skilled in the art will recognize that other types of volatilememory SRAM and DRAM may also be connected. One skilled in the art willalso recognize that memory caches may also be included in the memoriesand CPU modules.

[0031] Input/ Output bus 220 connects CPU 201 to peripheral devices fortransmission of data between CPU 201 and the peripheral devices.Examples of peripheral devices that may be connected to I/O bus 220include memory 225, keyboard 230, pointing device 235, display 240,modem 245, and network connector 250. Those skilled in the art willrecognize that these devices are shown for exemplary purposes and any ofthe devices may not be included in a processing system or other devicemay be included.

[0032] Memory 225 is a device for storing data and instructions forapplications on a media. Memory 225 may include a disk drive for readingand writing data to a magnetic media, or an optical device for readingand/or writing data to in an optical format to an optical media such asa compact disc. Keyboard 230 is a device receiving alphanumeric datafrom a user. Pointing device 235 is a mouse, touch pad or other suchdevice used to receive input for moving an icon or “pointer” across adisplay. Display 240 is a device that receives data from the processingunit and displays the data on a monitor. Modem 245 is a device thatconnects to a telephone and converts digital data to analog signals fortransmission over the telephone line. Network device 250 is a devicethat connects system 200 to a network to send and receive data over thenetwork. An example of a network device 250 is an “Ethernet Card” whichincludes circuitry for connecting to a network.

[0033] FIGS. 3-5 illustrate flow diagrams of the steps of processesexecuted by the processing systems to provide determination of anidentification of a work in a data transfer. For purposes of thisdiscussion, a data transfer may be a file read from a media, receiving afile in a file transfer via a network connection, or receiving a streamof data over a network connection.

[0034]FIG. 3 illustrates a process 300 executed by a client computer toreceive a data transfer including a work. In FIG. 1, client computersmay be personal computers 150 and 152 or a server that connects via thegateway server. One skilled in the art will recognize that process 300may be modified to allow process 300 to be executed by the sameprocessing system that performs the process of identifying the work bymodifying process 300. In order to be performed by the same processingsystem, process 300 may be modified to pass data to the processesdescribed below that are being executed by the same processing system.

[0035] Process 300 begins with the client computer receiving a datatransfer that includes the media content of a work in step 305. Asstated above, the data transfer may be reading a file stored on a media,receiving a file via file transfer over a network, or receiving a streamof data over a network. Furthermore, media content is the data that is arepresentation of a work and does not include meta-tags, headers orother descriptors that may be used to identify the work.

[0036] After, receiving the data transfer, the client reads the mediacontent of the work from the received data in step 310. This may includeseparating headers, meta-tags, other descriptors, and data managementoverhead from the media content in the received data. Reading the mediacontent in step 310 may also include extracting the media content from aphysical media such as a CD or DVD. After the media content is read, anoptional step of converting the media content to a format suitable forgenerating a fingerprint may be performed in step 315. If the mediacontent is audio data, the format may be PCM samples. If the mediacontent is compressed data or software, the suitable format may be anuncompressed form of the data. The conversion of step 315 is to put thedata in the proper format to generate the fingerprint. The conversion ofstep 315 may also include separating video and audio data of a work. Theconversion in step 315 may also include a rendering of MP3 data, adecoding of DDP data, a rendering of WMA real audio, a decoding of B64,or other typical encoding methods are known in the art. The conversionof step 315 may also include the decompression or separation ofcompressed binary data.

[0037] After, the media content of the work is in a suitable format theprocessing unit then generates the fingerprint of the media content instep 320. One skilled in the art will recognize that there are manyalgorithms that may be used to generate a fingerprint. Some of theseknown algorithms use the. media content of the work exclusively togenerate a fingerprint. Other algorithms may use the media content aswell as physical descriptors, such as the descriptors separated in step310, to generate the fingerprint. An example of a process for generatingthe fingerprint is the process described in U.S. Pat. No. 5,918,223 thatmay be used to generate a fingerprint of an audio work which isincorporated by reference into as if set forth in this application. Anexample of a process for generating a fingerprint of a software work isa Cyclical Redundancy Check that is well known in the art. One skilledin the art will recognize that the exact method for generating thefingerprint may be varied as long as the fingerprint generated issuitable for comparison against the fingerprints of known works.

[0038] If process 300 is being performed by a client processing unit, anoptional step 325 may be performed in which the fingerprint is comparedto fingerprints stored in a local known works database. This databasemay be populated with fingerprints and metadata of the most frequentlycopied works or with most previously transferred works or works of aparticular interest. Typically, the local database may be significantlysmaller than a known works database on a server. This local database maybe used to speed up identification and reduce traffic to the server.

[0039] If optional step 325 is performed, the processing systemdetermines whether the fingerprint of the work matches a fingerprint inthe local database in step 330. If the fingerprint matches one of thefingerprints in the local database, the processing system obtains theidentification information in step 332 and generates a report from theobtained information in step 334. The report includes the identificationor title of the work and the time that the identification is performed.The report may also include the owner of the work, a list of attributesof the work, or any other information about the work stored in thedatabase. The report is then stored in a memory connected to theprocessing system for future use in step 350.

[0040] If the fingerprint of the work does not match a fingerprint inthe local database or after step 320 if optional step 325 is notperformed, the processing system transmits the fingerprint of the workto an ID server, or second processing unit, in step 335. In order toreduce transmissions, save time or other reasons, the processing systemmay transmit the fingerprints of more than one works in a request. Thetransmission is typically in standard TCP/IP format over the Internet ora local network where there is connection of between the processingsystems.

[0041] In step 340, the processing system then waits to receive a reportback from the ID server. When the report is received, optional step 345may be performed in which the fingerprint of the work and the identityof the work are stored in the local known works database for futurecomparisons. The report is then stored in step 350.

[0042] In step 355, the stored report may then be used to generate aprintable report of all works received by the processing unit. Thisreport may then be used as an anti-piracy report or an inventory reportfor confirmation of a bill of materials. Alternatively, an HTML versionof the report may be generated. This allows the report to viewed using acommonly available web browser. In another alternative, the processingsystem may transmit the report to a processing system maintained by anowner of a property right in the work for billing or other uses.Alternatively, the report may be transmitted to processing systems ofother interested parties, such as agents.

[0043]FIG. 6 illustrates a second exemplary embodiment a process 600executed by a client processing system that copies multiple works to oneor more storage media or in some other way distributes the works.Process 600 begins in step 605 by receiving a master copy of works totransfer. For purposes of this discussion, a master copy is collectionof data that includes media content of one or more one or more worksthat is to be copied or in some other manner transmitted to anothersystem. As stated above, the data transfer may be reading a file storedon a media, receiving a file via file transfer over a network, orreceiving a stream of data over a network. Furthermore, media content isthe data that is a representation of a work and does not includemeta-tags, headers or other descriptors that may be used to identify thework.

[0044] In step 610, process 600 determines if there are any remainingworks in the data of the master copy. If there is media content for atleast one work remaining in the master copy, process 600 reads the mediacontent of a work from the master copy in step 615. This may includeseparating headers, meta-tags, other descriptors, and data managementoverhead from the media content in the received data. Reading the mediacontent of a work in step 615 may also include extracting the mediacontent from a physical media such as a CD or DVD.

[0045] After the media content is read, an optional step of convertingthe media content to a format suitable for generating a fingerprint maybe performed in step 620. If the media content is audio data, the formatmay be PCM samples. If the media content is compressed data or software,the suitable format may be an uncompressed form of the data. Theconversion of step 620 is to put the data in the proper format togenerate the fingerprint. The conversion of step 620 may also includeseparating video and audio data of a work. The conversion in step 620may also include a rendering of MP3 data, a decoding of DDP data, arendering of WMA real audio, a decoding of B64, or other typicaldecoding or decrypting methods are known in the art. The conversion ofstep 620 may also include the decompression or separation of compressedbinary data.

[0046] After, the media content of the read work is in the suitableformat the processing unit then generates the fingerprint of the mediacontent in step 622. One skilled in the art will recognize that thereare many algorithms that may be used to generate a fingerprint. Some ofthese known algorithms use the media content of the work exclusively togenerate a fingerprint. Other algorithms may use the media content aswell as physical descriptors, such as the descriptors separated in step310, to generate the fingerprint. An example of a process for generatingthe fingerprint is the process described in U.S. Pat. No. 5,918,223 thatmay be used to generate a fingerprint of an audio work which isincorporated by reference into as if set forth in this application. Anexample of a process for generating a fingerprint of a software work isa Cyclical Redundancy Check that is well known in the art. One skilledin the art will recognize that the exact method for generating thefingerprint may be varied as long as the fingerprint generated issuitable for comparison against the fingerprints of known works.

[0047] An optional step 625 may be performed in which the fingerprint ofthe read work is compared to fingerprints stored in a local database ofknown works. This database may be populated with fingerprints andmetadata of the most frequently copied works or with most previouslytransferred works or works of a particular interest. Typically, thelocal database may be significantly smaller than a known works databaseon a server. This local database may be used to speed up identificationand reduce traffic to the server.

[0048] If optional step 625 is performed, the processing systemdetermines whether the fingerprint of the read work matches afingerprint in the local database in step 630. If the fingerprintmatches one of the fingerprints in the local database, the processingsystem obtains the identification information of the matchingfingerprint in step 632 in and ads the identification information to areport in step 634. The report includes the identification or title ofthe work and the time that the identification is performed. The reportmay also include the owner of the work, a list of attributes of thework, or any other information about the work stored in the database.Process 600 then returns to step 610 to perform another iteration.

[0049] If the fingerprint of the read work does not match a fingerprintin the local database in step 630 or after step 622 if optional step 625is not performed, the processing system adds the fingerprint of the readwork to request to be transmitted to an ID server, or second processingunit, in step 635. Process 600 then returns to step 610 to performanother iteration.

[0050] When process 600 determines that there are no remaining works toprocess, process 600 transmits the request that includes thefingerprints of the works to be identified in step 640. The request istransmitted to an ID sever or second processing system. The transmissionis typically in standard TCP/IP format over the Internet or a localnetwork where there is connection of between the processing systems.

[0051] In step 645, the processing system then waits to receive a reportback from the ID server. When the report is received, optional step 645may be performed in which the fingerprints and identities of theidentified works are stored in the local known works database for futurecomparisons. The report is then stored in step 655. A viewable format ofthe report may then be generated in step 660. This may be a text filethat is accessible by a word processing application or a file readableby a standard web browser.

[0052] Optional step 665 may also be performed in which data from thereport is read. The read data is then compared to a criteria in step670. This may include the owners or works, identities of work, or otherdata about works that are in the report. If the criteria is met by thedata from the report, process 600 proceeds with the file transfer instep 675 and process 600 ends. Otherwise, process 600 terminates thetransfer because the criteria was not met in step 680 and process 600ends.

[0053]FIG. 4 illustrates a process 400 for generating a report about theidentity of a work by an identification server. Process 400 may also bemodified to be executed by the same processing unit that is executingprocess 300 depending on configuration of a system.

[0054] Process 400 begins in step 405 by receiving a request for areport of the identification of a work. The request includes afingerprint of the work that is generated from the media content of thework. In order to minimize transmission and time, a request may includefingerprints of more than one work. In which case, the remaining stepsof process 300 may be executed on each fingerprint in the request.Process 300 describes the generation of this fingerprint in the abovedescription.

[0055] In step 410, process 400 determines the identity of the workbased upon the received fingerprint. A description of a preferred methodof determining the identity is described below and shown in FIG. 5.

[0056] In step 415, process 400 generates a report that includes thename of the work. The report may also include the time that theidentification is requested, number of times the work is identified orany other relevant data that one skilled in the art determinesnecessary. The report is then stored in a memory that is connected tothe processing system executing process 400 in step 420. The report maythen be used to generate statistics and reports about the transfers ofthe work between processing systems.

[0057] In step 425, process 400 transmits the generated report to theprocessing system or client, requesting the identification. Optionally,process 400 may then transmit the report to a processing systemmaintained by an owner of a property right in the work or otherinterested party in step 430. The processing system may be determinedfrom a record showing an IP or other address of the owner and may besent as an E-mail or other type of transmission. The report may also becombined with other reports and sent to the owner as a batch of dataperiodically. The exact manner of the transmission is left to designerof the system knowing the requirements of various users of the system.After step 425 or step 430, process 400 ends.

[0058] Process 500 illustrates a preferred process for identifying awork from a fingerprint generated from the media content of the workthat is performed in step 410 of FIG. 4. One skilled in the art willrecognize that other method including statistical analysis of thefingerprint, may be interchangeable with process 500.

[0059] Process 500 begins in step 505 by comparing the fingerprint ofthe work to fingerprints of known works that are stored in a known worksdatabase. The known works database is a database that is maintained bythe processing system that includes the fingerprints of all works thathave an identity that is known. This database may be populated in manyways. For example, the database may be populated from the media contentof works that are provided by owners of a property right in works. Forexample, a media company may provide the works including the identitiesand associated identification information. In a second example, asoftware publisher may provide the works including identities andassociated identification information for software applications. In athird example, an image library, such as a stock photography company,may provide the works including identities and associated identificationinformation for images. Fingerprints of the works are then generated andstored in a record of the work along with the identity of the work andother associated information. The exact populating and maintaining ofthe database is left to a designer of the system that will know theexact requirements needed by users of the system which will be obviousto anyone skilled in the art designing such a database.

[0060] In step 510, process 500 determines whether the receivedfingerprint matches one of the fingerprints in the database of knownworks. If the received fingerprint matches one of the fingerprints inthe database of known works, process 500 retrieves the associatedidentifying information for each of the matching fingerprints from thedatabase in step 515 and adds the identifying information to the resultsof the matching. The results are then returned in step 520. Process 500then returns to step 410 of process 400 or step 330 of process 300.

[0061] If there is no match for the fingerprint in the database of knownworks, process 500 may return an unknown work message. Alternatively,process 500 may compare the fingerprint to fingerprints stored in adatabase of unknown works in step 530. The database of unknown works isa database maintained by the processing system that stores a record ofall fingerprints encountered that did not match a fingerprint in thedatabase of known works. The record for each fingerprint in thisdatabase may include a time the fingerprint is encountered, a number oftimes the fingerprint is encountered, a geographic or network locationof the system requesting identification, other information that oneskilled in the art may desire to track encounters of unidentified works.

[0062] Process 500 then determines whether the received fingerprintmatched one of the fingerprints in the database of unknown works in step535. If the received fingerprint matches one of the fingerprints in theunknown works database, process 500 retrieves the time of firstencounter, number of encounters, and/or other metadata information instep 540. The time of first encounter, number of encounters and/ormetadata information is then added to the result in step 545. The resultis then returned in step 550. The number of encounters then may beincremented or updated in step 560 and then process 500 returns to step410 of process 400 or step 330 of process 300.

[0063] If the received fingerprint does not match a fingerprint in thedatabase of unknown works in step 535, an “unknown work” message isreturned in step 580. Additionally, the received fingerprint may beadded to the database of unknown works in step 585. The added record forthe received fingerprint will include a time of the request as time offirst encounter and any other information about the encounter that oneskilled in the art may want to store. After step 585, process 500 ends.

[0064] While embodiments and applications have been shown and described,it would be apparent to those skilled in the art that many moremodifications and improvements than mentioned above are possible withoutdeparting from the inventive concepts herein. The disclosure, therefore,is not to be restricted except in the spirit of the appended claims.

What is claimed is:
 1. A product that determines an identification ofmedia content comprising the steps of: a first set of instructions fordirecting a processing unit to: receive a fingerprint of a workgenerated from media content of said work, determine an identity of saidwork from said fingerprint responsive to receiving said fingerprint, andgenerate a report including said identity of said work responsive to adetermination of said identity; and a media readable by said processingunit that stores said instructions.
 2. The product of claim 1 whereinsaid instructions to receive said fingerprint of said work furthercomprise: receiving a request including a plurality of fingerprintswherein said fingerprint is a one of said plurality of fingerprints. 3.The product of claim 2 wherein said instruction to generate said reportinclude: generating a report including an identity of a work for each ofsaid plurality of fingerprints received.
 4. The product of claim 1wherein said instructions further comprise: instructions for directingsaid processing unit to: transmit said report to a second processingunit.
 5. The product of claim 4 wherein said second processing unittransmitted said fingerprint to said processing unit.
 6. The product ofclaim 4 wherein said second processing unit maintains records for anowner of a property right in said work.
 7. The product of claim 4wherein said second processing unit maintains records for an interestedparty.
 8. The product of claim 1 wherein said instructions furthercomprise: instructions for directing said processing unit to: store saidreport in a memory connected to said processing unit.
 9. The product ofclaim 1 wherein said instructions for determining an identity of saidwork from said fingerprint comprises: instructions for directing theprocessing unit to: compare said fingerprint to a plurality offingerprints stored in a database of know works, determine a one ofplurality of fingerprints that matches said fingerprint, and retrieve anidentification of said one of said plurality of fingerprints responsiveto a determination of a match with said fingerprint.
 10. The product ofclaim 9 wherein said instructions for determining said identity of saidwork further comprise: instructions for directing said processing unitto: compare said fingerprint to a plurality of fingerprints stored in adatabase of unknown works responsive to a determination that saidfingerprints does not match one of said plurality of fingerprints insaid database of known works, and determine said fingerprint matches aone said plurality of fingerprints in said database of unknown works.11. The product of claim 10 wherein said instructions for generating areport comprise: instructions for directing said processing unit to:provide a time of first detection of said work in said report.
 12. Theproduct of claim 10 wherein said instructions for generating a reportcomprise: instructions for directing said processing unit to: provide alocation of first detection of said work in said report.
 13. The productof claim 10 wherein said instructions for determining an identity ofsaid work further comprises: instructions for directing said processingunit to: store said fingerprint in said database of unknown worksresponsive to a determination that said unknown does not match one ofsaid plurality of works in said unknown database.
 14. The product ofclaim 10 wherein said instructions for determining an identity of saidwork further comprises: instructions for directing said processing unitto: store a time of first detection of said work in said database ofunknown works responsive to storing said fingerprint in said database ofunknown works.
 15. The product of claim 1 further comprising: a secondset of instructions for directing a processing unit to: receive saidmedia content of said work, and generate said fingerprint of said workfrom said media content, and a media readable by said processing unitthat stores said second set of instructions.
 16. The product of 15wherein said second set of instructions further comprise: instructionsfor directing said processing unit to: transmit said fingerprint of saidwork to a second processing unit.
 17. The product of claim 15 whereinsaid second set of instructions further comprise: instructions fordirecting said processing unit to: determine whether said fingerprint ismatches one of a plurality of fingerprints stored in a local database ofknown works.
 18. The product of claim 17 wherein said second set ofinstructions further comprise: instructions for directing saidprocessing unit to: generate a report with an identity of said one ofsaid plurality fingerprints stored in said local database of known worksthat matches said fingerprint responsive to a match between saidfingerprint and said one of said plurality of fingerprints.
 19. Theproduct of claim 17 wherein said second set of instructions furthercomprise: instructions for directing said processing unit to: transmitsaid fingerprint to a second processing unit responsive to adetermination that said fingerprint does not match one of said pluralityof fingerprints in said local database of unknown works.
 20. The productof claim 19 wherein said second set of instructions further comprise:instructions for directing said processing unit to: receive a reportfrom said second processing unit including an identity of said workresponsive to transmitting said fingerprint to said second processingunit.
 21. The product of claim 20 wherein said second set ofinstructions further comprise: instructions for directing saidprocessing unit to: store said identity received in said report and saidfingerprint of said work in a record in said local database of knownworks in response to receiving said report.
 22. The product of claim 16wherein said second set of instructions further comprise: instructionsfor directing said processing unit to: receive said report includingsaid identity of said work from said second processing unit.
 23. Theproduct of claim 22 wherein said second set of instructions furthercomprise: instructions for directing said processing unit to: store saidreport in a memory.
 24. The product of claim 23 wherein said second setof instructions further comprise: instructions for directing saidprocessing unit to: insert a location of said processing unit into saidreport.
 25. The product of claim 15 wherein said second set ofinstructions further comprise: instructions for directing saidprocessing unit to: provide said report in a printable format.
 26. Theproduct of claim 15 wherein said second set of instructions furthercomprise: instructions for directing said processing to: transmit saidreport to a third processing unit.
 27. The product of claim 15 whereinsaid second set of instructions comprises: instructions for directingsaid processing unit to: read said media content of said work from amedia storing said media content.
 28. The product of claim 27 whereinsaid second set of instructions further comprise: instructions fordirecting said processing unit to: convert said media content from afirst format read from a standard format, generating said fingerprintfrom said media content in said standard format.
 29. The product ofclaim 28 wherein said instructions for converting said media contentcomprise: instructions for directing said processing unit to: convertsaid media content from an MP3 format.
 30. The product of claim 28wherein said instructions for converting said media content comprise:instructions for directing said processing unit to: convert said mediacontent from an AVI format.
 31. The product of claim 28 wherein saidinstructions for converting said media content comprise: instructionsfor directing said processing unit to: convert said media content froman WMA format.
 32. The product of claim 28 wherein said instructions forconverting said media content comprise: instructions for directing saidprocessing unit to: convert said media content from a cabinet format.33. The product of claim 28 wherein said instructions for convertingsaid media content comprise: instructions for directing said processingunit to: separating audio media content from video media content. 34.The product of claim 15 wherein said first set of instruction and saidsecond set of instructions are performed by one processing unit.
 35. Theproduct of claim 15 wherein said first set of instructions are performedby a first processing unit and said second set of instructions areperformed by a second processing unit.
 36. The product of claim 15wherein said second set of instruction further comprise: instructionsfor directing said second processing unit to: compare identificationinformation in said report to a criteria, and proceeed with a filetransfer responsive to said identification information meeting saidcriteria.
 37. The product of claim 16 wherein said second set ofinstructions further comprises: instructions for directing said secondprocessing unit to: terminate a file transfer responsive to saididentification data failing to meet said criteria.
 38. A method thatdetermines an identification of replicated media content comprising:receiving a fingerprint of a work generated from media content of saidwork in a first processing system; determining an identity of said workfrom said fingerprint responsive to receiving said fingerprint; andgenerating a report including said identity of said work responsive to adetermination of said identity.
 39. The method of claim 38 wherein saidstep of receiving said fingerprint of said work further comprises:receiving a request including a plurality of fingerprints wherein saidfingerprint is a one of said plurality of fingerprints.
 40. The methodof claim 39 wherein said step of generating said report include:generating a report including an identity of a work for each of saidplurality of fingerprints received.
 41. The method of claim 38 furthercomprising: transmitting said report to a second processing unit. 42.The method of claim 41 further comprising: transmitting said fingerprintfrom said second processing unit.
 43. The method of claim 41 whereinsaid second processing unit maintains records for an owner of a propertyright in said work.
 44. The product of claim 41 wherein said secondprocessing unit maintains records for an interested party.
 45. Themethod of claim 38 further comprising: storing said report in a memory.46. The method of claim 38 wherein said step for determining an identityof said work from said fingerprint comprises: comparing said fingerprintto a plurality of fingerprints stored in a database of know works;determining a one of plurality of fingerprints that matches saidfingerprint; and retrieving an identification of said one of saidplurality of fingerprints responsive to a determination of a match withsaid fingerprint.
 47. The method of claim 46 wherein said step fordetermining said identity of said work further comprises: comparing saidfingerprint to a plurality of fingerprints stored in a database ofunknown works responsive to a determination that said fingerprints doesnot match one of said plurality of fingerprints in said database ofknown works, and determining said fingerprint matches a one saidplurality of fingerprints in said database of unknown works.
 48. Themethod of claim 47 wherein said step for generating a report comprise:providing a time of first detection of said work in said report.
 49. Themethod of claim 47 wherein said step for generating a report comprise:providing a location of first detection of said work in said report. 50.The method of claim 47 wherein said step for determining an identity ofsaid work further comprises: storing said fingerprint in said databaseof unknown works responsive to a determination that said unknown doesnot match one of said plurality of works in said unknown database. 51.The method of claim 52 wherein said instructions for determining anidentity of said work further comprises: storing a time of firstdetection of said work in said database of unknown works responsive tostoring said fingerprint in said database of unknown works.
 52. Themethod of claim 38 further comprising: receiving said media content ofsaid work in second processing unit; and generate said fingerprint ofsaid work from said media content; and a media readable by saidprocessing unit that stores said second set of instructions.
 53. Themethod of 52 further comprising: transmitting said fingerprint of saidwork to said first processing unit.
 54. The method of claim 52 furthercomprising: determining whether said fingerprint is matches one of aplurality of fingerprints stored in a local database of known works insaid second processing unit.
 55. The method of claim 54 furthercomprising: generating a report with an identity of said one of saidplurality fingerprints stored in said local database of known works insaid second processing unit that matches said fingerprint responsive toa match between said fingerprint and said one of said plurality offingerprints.
 56. The method of claim 54 further comprising:transmitting said fingerprint from said second processing unit to saidfirst processing unit responsive to a determination that saidfingerprint does not match one of said plurality of fingerprints in saidlocal database of unknown works.
 57. The method of claim 56 furthercomprising: receiving a report from said second processing unitincluding an identity of said work responsive to transmitting saidfingerprint to said second processing unit.
 58. The method of claim 57further comprising: storing said identity received in said report andsaid fingerprint of said work in a record in said local database ofknown works in response to receiving said report.
 59. The of claim 52further comprising: receiving said report including said identity ofsaid work from said first processing unit in said second processingunit.
 60. The method of claim 59 further comprising: storing said reportin a memory of said second processing unit.
 61. The method of claim 60further comprising: inserting a location of said second processing unitinto said report.
 62. The method of claim 60 further comprising:providing said report in a printable format.
 63. The method of claim 60further comprising: transmitting said report from said second processingunit to a third processing unit.
 64. The method of claim 52 furthercomprising: reading said media content of said work from a media storingsaid media content.
 65. The method of claim 64 further comprising:converting said media content from a first format read from a standardformat; and generating said fingerprint from said media content in saidstandard format.
 66. The method of claim 65 wherein said step forconverting said media content comprises: converting said media contentfrom an MP3 format.
 67. The method of claim 65 wherein said step forconverting said media content comprises: converting said media contentfrom an AVI format.
 68. The method of claim 65 wherein said step forconverting said media content comprises: converting said media contentfrom an WMA format.
 69. The method of claim 65 wherein said step forconverting said media content comprises: converting said media contentfrom a cabinet format.
 70. The method of claim 65 wherein said step forconverting said media content comprises: separating audio media contentfrom video media content.
 71. The method of claim 52 further comprising:comparing identification information in said report to a criteria; andproceeding with a data transfer responsive to said identificationinformation meeting said criteria.
 72. The method of claim 71 furthercomprising: terminating a file transfer responsive to saididentification data failing to meet said criteria.
 73. A product forproviding a process for replicating at least one work comprising:instructions for directing a processing unit to: receive a master copyof media content for a plurality of works, generate a plurality offingerprints wherein each of said plurality of fingerprints is generatedfrom media content of one of said plurality of works, determine anidentity of each of said plurality of works from said plurality offingerprints, compare said identity of each of said plurality of worksto a criteria, and transfer said master work in response to adetermination that said criteria is met by at least one of saidplurality of works; and a media readable by said processing unit thatstores said instructions.
 74. The product of claim 73 wherein saidinstructions for instructions further comprise: instructions fordirecting said processing unit to: prevent a transfer of said masterwork responsive to a determination that at least one of said pluralityof works does not meet said criteria.
 75. The product of claim 73wherein said criteria is an identity of said work.
 76. The product ofclaim 73 wherein said instructions for determining said identitycomprises: instructions for directing said processing unit to: transmitsaid plurality of fingerprints to a second processing unit, and receivea report of identities of each of said plurality of works from saidsecond processing unit.
 77. The product of claim 73 wherein saidinstructions for determining identities of said plurality of workscomprises: instructions for directing said processing unit to: compareeach of said plurality of fingerprints to a plurality of fingerprintsstored in a local database, determine whether each of said fingerprintsmatches one of said plurality of fingerpirnts in said local database,and return identification data for each of said plurality offingerprints responsive to a determination of a match for each of saidfingerprints.
 78. The product of claim 77 wherein said instructionsfurther comprise: instructions for directing said processing unit to:transmit at least one of said plurality of fingerprints to a secondprocessing unit responsive to a determination of an absence of a matchfor said at least one of said plurality fingerprints in said localdatabase.